﻿#region License
// /* **************************************************************
// * Copyright (C) intex Consulting GmbH - All Rights Reserved    *
// *--------------------------------------------------------------*
// * Unauthorized copying of this file, via any medium is         *
// * strictly prohibited                                          *
// *--------------------------------------------------------------*
// * Proprietary and confidential                                 *
// *--------------------------------------------------------------*
// * Dissasembling/modifications strictly prohibited!             *
// ***************************************************************/
#endregion

using System.Collections.Generic;
using System.Diagnostics.CodeAnalysis;

namespace ComHlp.ContentClasses.VirtualControls.Polynom
{
    [SuppressMessage("ReSharper", "UnusedAutoPropertyAccessor.Global")]
    public class ItxPolynom
    {
        /// <summary> LfdNr		9(01) laufender Polynom </summary>
        public int Number { get; set; }

        /// <summary> Typ		X(01) immer „1“ </summary>
        public int Type { get; set; }

        /// <summary> P-Anz		9(03) Anzahl der Punkte im Polynom </summary>
        public int PointCount { get; set; }

        /// <summary> L-Anz		9(03) Anzahl der Legenden </summary>
        public int LegendCount { get; set; }

        /// <summary> Von-X		9(04) in Pseudopixeln (1 Spalte=60) </summary>
        public int StartX { get; set; }

        /// <summary> Bis-X		9(04) in Pseudopixeln (1 Spalte=60) </summary>
        public int EndX { get; set; }

        /// <summary> Von-Y		9(04) in Pseudopixeln (1 Zeile=180) </summary>
        public int StartY { get; set; }

        /// <summary> Bis-Y		9(04) in Pseudopixeln (1 Zeile=180) </summary>
        public int EndY { get; set; }

        /// <summary> RGB1		3x9(03) RGB </summary>
        public ItxColor Color1 { get; set; }

        /// <summary> RGB2		3x9(03) RGB </summary>
        public ItxColor Color2 { get; set; }

        /// <summary> Dicke		9(02) in Pixeln </summary>
        public int ThickNess { get; set; }

        /// <summary> BGRD		J=mit Background </summary>
        public bool HasBackColor { get; set; }

        /// <summary> Faktor		9(01)v9(01) für die Größe der Schrift </summary>
        public double Factor { get; set; }

        /// <summary> Y-Text		Y-Pos des Textes in Pseudopixeln (1 Zeile=180) </summary>
        public int TextY { get; set; }

        /// <summary> Kennung 	X(02) TN=Textname
        /// Textlänge	9(02) Textlänge die nun folgt
        /// Text        X(xx)
        /// RGB-Nr		9(01) 1 oder 2 
        /// </summary>
        public string TextName { get; set; }

        public int TextNameColorId { get; set; }

        /// <summary> Kennung 	X(02) TO=Text oben
        /// Textlänge	9(02) Textlänge die nun folgt
        /// Text X(xx)
        /// RGB-Nr		9(01) 1 oder 2
        /// </summary>
        public string UpperTextName { get; set; }

        public int UpperTextNameColorId { get; set; }

        /// <summary> Kennung 	X(02) TU=Text unten
        /// Textlänge	9(02) Textlänge die nun folgt
        /// Text X(xx)
        /// RGB-Nr		9(01) 1 oder 2
        /// </summary>
        public string LowerTextName { get; set; }

        public int LowerTextNameColorId { get; set; }

        /// <summary> legends </summary>
        public List<ItxPolynomLegend> Legends { get; set; } = new List<ItxPolynomLegend>();

        /// <summary> points </summary>
        public List<int> Points { get; set; } = new List<int>();

        /// <summary> RGB Nr		9(01) Hintergrundfarbe (Index)</summary>
        public int BackColorIndex { get; set; }
    }
}